#pragma once

struct ETexture
{
	enum Name
	{
	    Color = 0,
	    Normal,
	    Material,
	    Position,
	    Light,
	    UserInterface,
	    DepthBuffer,
	    PPFX_A,
	    PPFX_B,
	    Count
	};
};

struct GLTextureDesc;
static const GLTextureDesc g_textureBuffersDesc[] =
{
	{ "CLR_BUFFER",			0,			0,			GL_RGBA8,			GL_RGBA,			GL_UNSIGNED_BYTE,		NULL	},
	{ "NRM_BUFFER",			0,			0,			GL_RGBA8,			GL_RGBA,			GL_UNSIGNED_BYTE,		NULL	},
	{ "MAT_BUFFER",			0,			0,			GL_RGBA8,			GL_RGBA,			GL_UNSIGNED_BYTE,		NULL	},
	{ "POS_BUFFER",			0,			0,			GL_RGBA32F,			GL_RGBA,			GL_FLOAT,				NULL	},
	{ "LIGHT_BUFFER",		0,			0,			GL_RGBA8,			GL_RGBA,			GL_UNSIGNED_BYTE,		NULL	},
	{ "UI_BUFFER",			0,			0,			GL_RGBA8,			GL_RGBA,			GL_UNSIGNED_BYTE,		NULL	},
	{ "DEPTH_BUFFER",		0,			0,			GL_DEPTH_COMPONENT,	GL_RED,				GL_FLOAT,				NULL	},
	{ "PPFX_A",				0,			0,			GL_RGBA8,			GL_RGBA,			GL_UNSIGNED_BYTE,		NULL	},
	{ "PPFX_B",				0,			0,			GL_RGBA8,			GL_RGBA,			GL_UNSIGNED_BYTE,		NULL	}
};
